1. Field of the Invention
The present invention relates generally to single instruction, multiple data (SIMD) computer architecture.
2. Discussion of the Related Art
SIMD computer architecture was first developed in the 1970s as a means for increasing the rate at which a computer can complete calculations. The design uses an array of processing elements to perform a common instruction on multiple pieces of data simultaneously. This arrangement minimizes the number of logic gates that must be dedicated to control—fetching, decoding, and scheduling instructions—with a consequential increase in the number of logic gates available for storage and data processing.
Successful exploitation of this design depends on the ability to develop parallel algorithms that maximize the number of operations that can be performed simultaneously via the given number of processing elements.
Certain situations naturally lend themselves to parallel processing. As a result, SIMD computing has been found to be particularly useful in applications for air traffic control, aircraft early warning radar surveillance, weather data management, command and control processing, signal/image processing, cancer radiation research, decision support, and bioinformatics.
These specialty applications have resulted in SIMD machines being designed for dedicated purposes. Because the design and testing costs of custom SIMD chips are borne by a small user base, SIMD hardware computers tend to be more expensive than general purpose workstations.
The ability of computers to do more work is enhanced by their ability to do different kinds of work. Along this line of reasoning, the development of computer graphic capabilities has followed the observation that such features appeal to a wide variety of users. Computer graphics systems are commonly used for displaying graphical representations of objects on a two-dimensional video display screen. Current computer graphics systems provide highly detailed representations and are used in a variety of applications.
However, the generation of a graphics image by a computer system requires a great deal of the processing power of that system. Therefore, it has become common for computer systems to include graphics accelerators to assist the central processing unit in its operations by taking over some portion of the data processing function relating to graphics. Current graphics accelerators typically employ an array of processors with various alterations and additions to the circuitry to facilitate the complex calculations associated with the graphical rendering of images.
The widespread desire for computer graphics features has resulted in the successful marketing of computers that can support these capabilities. The large customer base for these workstations has allowed them to be priced generally lower than special purpose SIMD machines.